ECMAScript for XML
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
ECMAScript for XML (E4X) was an extension to ECMAScript (which includes ActionScript, JavaScript, and JScript) to add native support for Extensible Markup Language (XML).cite-ref-iso-22537-2006-1-0[1] The goal was to provide a simpler alternative to the Document Object Model (DOM) interface for accessing XML documents. E4X added XML as a primitive data structure to allow faster access and better support within the language.
E4X was standardized by Ecma International in the ECMA-357 standard. The first edition was published in June 2004 and the second edition in December 2005. However, the E4X standard was deprecated by the Mozilla Foundation in 2014,cite-ref-2[2] and it was withdrawn by ISO/IEC in 2021.cite-ref-iso-22537-2006-1-1[1]
Contents
• Example
• See also
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Browser support
E4X was supported by SpiderMonkey (used in Firefox and Thunderbird). However, E4X was deprecated in Firefox 10cite-ref-4[4] and eventually removed in Firefox 21.cite-ref-5[5]
E4X was supported by the OpenOffice.org software suite.
Example
var sales = <sales vendor="John">
<item type="peas" price="4" quantity="6"/>
<item type="carrot" price="3" quantity="10"/>
<item type="chips" price="5" quantity="3"/>
</sales>;
alert( sales.item.(@type == "carrot").@quantity );
alert( sales.@vendor );
for each( var price in sales..@price ) {
alert( price );
}
delete sales.item[0];
sales.item += <item type="oranges" price="4"/>;
sales.item.(@type == "oranges").@quantity = 4;
See also
References
cite-note-iso-22537-2006-11. ↑ "ISO/IEC 22537:2006 Information technology – ECMAscript for XML: E4X specification". International Organization for Standardization. Retrieved 2024-08-17.
cite-note-22. ↑ "E4X – Archive of obsolete content – MDN". Mozilla. Archived from the original on 24 July 2014. Retrieved 10 September 2014.
cite-note-33. ↑ "Issue 30975: Implement E4X Support for scripts and extensions". Retrieved 21 May 2012.
cite-note-44. ↑ "Firefox 10 for developers". Mozilla. Archived from the original on 5 May 2012. Retrieved 21 May 2012.
cite-note-55. ↑ "E4X". Mozilla. Archived from the original on 30 September 2013. Retrieved 12 February 2013.
External links
• ECMA-357 (withdrawn first edition, second edition)
• E4X at faqts.com (or via WayBack Machine)
• Slides from 2005 E4X Presentation by Brendan Eich, Mozilla Chief Architect
• E4X at Mozilla Developer Center Archived 2008-04-19 at the Wayback Machine
• Introducing E4X at xml.com: compares E4X and json
• Processing XML with E4X at Mozilla Developer Center
• E4X: Beginner to Advanced at Yahoo Developer Network